package inutan.game.heart;

import inutan.common.kit.ConvKit;
import inutan.common.constant.ConfigConstant;
import org.ricks.common.lang.Logger;
import org.ricks.net.AioSession;
import org.ricks.net.handler.HeartPlugin;

/**
 * 心跳超时回调
 * 维护网关列表，校验列表存在 则创建session ,如果列表不存在说明 WEB GM删除了网关节点
 */
public class HeartTimeoutCallback implements HeartPlugin.TimeoutCallback {

    @Override
    public void callback(AioSession session, long lastTime) {
        Logger.info("心跳超时" + session + " & " + session.isInvalid() + " , start close session");
        session.close(true);
        int conv = ConvKit.merge(ConfigConstant.MODULE_ID,ConfigConstant.ID);
//        try {
//            GatewayManager.me().createSession(session.getRemoteAddress(),conv);
//        } catch (IOException e) {
//            throw new RuntimeException(e);
//        }
    }
}
